<?php

namespace app\validate;

use think\Validate;

class Menu extends Validate
{
    /**
     * 定义验证规则
     * 格式：'字段名' =>  ['规则1','规则2'...]
     *
     * @var array
     */
    protected $rule = [
        'type'=>['require','integer'],
        'parent_id'=>['integer'],
        'alias_id|别名'=>['require','alpha'],
        'menu_name'=>['require'],
//        'menu_level'=>['require'],
        'file' => [
            // 限制文件大小(单位b)，这里限制为4M
//            'fileSize' => 4 * 1024 * 1024,
            // 限制文件后缀，多个后缀以英文逗号分割
            'fileExt'  => 'jpg,png'
        ]
//        'parent_id'=>['require','integer'],
//        'parent_id'=>['require','integer'],

    ];

    /**
     * 定义错误信息
     * 格式：'字段名.规则名' =>  '错误信息'
     *
     * @var array
     */
    protected $message = [
        'id.require'=>'id不能为空',
//        'id.integer'=>'id必须为整数',
        'type.require'=>'菜单类型不能为空',
        'parent_id.integer'=>'父类选择错误',
        'alias_id.require'=>'菜单别名不能为空',
        'file.fileExt'  => '不支持的文件后缀',
        'menu_name.require'=>'菜单名称不能为空',
        'menu_level.require'=>'菜单等级为空',
        'uid.require'=>'用户id为空',
        'utype.require'=>'数据可见范围为空',
    ];


    public function sceneFiles()
    {
        return $this->only(['file']);
    }

    public function sceneDel()
    {
        return $this->only(['id']);
    }

    public function sceneEdit()
    {
        return $this->only(['id','type','parent_id','alias_id','menu_name','menu_level'])
            ->append('id','require');
    }

    /**
     * 权限设置->添加权限
     */
    public function sceneAddPower()
    {
        return $this->only(['uid','utype','menu_id'])
            ->append('utype','require')
            ->append('menu_id','require')
            ->append('uid','require');

    }

    /**
     * 权限设置->添加菜单&数据可见范围
     */
    public function sceneAddMenuDataPower()
    {
        return $this->only(['roles_id','data_range','menu_id'])
            ->append('data_range|数据可见范围','require')
            ->append('menu_alias_id|菜单别名','require')
            ->append('roles_id|角色id','require');

    }
}